/*******************************************************************************
 * 版权：北京润尼尔网络科技有限公司，保留所有版权<br>
 * 版本：v1.0.0<br>
 * 文件：UICompositeDraw2dCanvas.js<br>
 * 日期：2016年8月25日<br>
 * 作者: 王志远<br>
 * 功能：Draw2d帆布组件<br>
 *
 * 修改记录：<br>
 * 日期 描述 更新功能<br>
 ******************************************************************************/

window.makeNamespace(window, "Rainier.UI.V2");

/**
 * 类型名称：Rainier.UI.V2.UICompositeDraw2dCanvas<br>
 * 类型功能：分页组件类声明，简化分页操作<br>
 */
Rainier.UI.V2.UICompositeDraw2dCanvas = Rainier.UI.V2.UIComposite.extend({
  NAME: "Rainier.UI.V2.UICompositeDraw2dCanvas",

  /**
   * 函数名称：Rainier.UI.V2.UICompositeDraw2dCanvas.init<br>
   * 函数功能：构造函数<br>
   * 参数输入：objParentComposite	:  	父组件实例 一般为对应的panel或者layout中添加<br>
   * 参数输入：objProperties		 	:
   * {
   * 		width : 3000,
   * 		height: 3000
   * }
   * 注：具体参数信息参照easyUI官网该组件Properties。<br>
   * 异常信息：无<br>
   */
  init: function (objParentComposite, objProperties) {
    //使用父类初始化子类对象
    this.canvas = null;
    this._super(objParentComposite, objProperties);
  },

  /**
   * 函数名称：Rainier.UI.V2.UICompositeDraw2dCanvas.createComposite<br>
   * 函数功能：创建组件<br>
   * 参数输入：eleParent : 父组件的节点元素<br>
   * 函数返回：无<br>
   * 异常信息：无<br>
   */
  createComposite: function (eleParent) {
    this._super(eleParent);
    var sStyle = "position:relative;";
    sStyle += "width:" + this.m_objProperties.width + "px;";
    sStyle += "height:" + this.m_objProperties.height + "px";

    var newEle = this.CreateElement("div", this.m_objProperties.id, null, { style: sStyle });
    eleParent.append(newEle);
    console.log("eleParent", eleParent);
    this.canvas = new Rainier.UI.V2.Canvas(this.m_objProperties.id, this.m_objProperties.width, this.m_objProperties.height);
  },

  getWindowWidth: function () {
    // 获取窗口宽度
    if (window.innerWidth) {
      winWidth = window.innerWidth;
    } else if (document.body && document.body.clientWidth) {
      winWidth = document.body.clientWidth;
    }
    // // 通过深入 Document 内部对 body 进行检测，获取窗口大小
    // if (document.documentElement && document.documentElement.clientHeight && document.documentElement.clientWidth){
    // 	winHeight = document.documentElement.clientHeight;
    // 	winWidth = document.documentElement.clientWidth;
    // }
    return winWidth;
  },

  getWindowHeight: function () {
    // 获取窗口高度
    if (window.innerHeight) {
      winHeight = window.innerHeight;
    } else if (document.body && document.body.clientHeight) {
      winHeight = document.body.clientHeight;
    }

    return winHeight;
  },
});
